home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
ol
/
release.txt
< prev
Wrap
Text File
|
1993-07-22
|
2KB
|
52 lines
OL(P): Object Layer for Prolog
This is to announce OL(P), an object-oriented extension to Prolog.
Version 1.1 can be installed for SICStus Prolog 2.1, SICStus Prolog
0.6, and QUINTUS Prolog.
Object Layer for Prolog, OL(P), provides an object-oriented
structuring and reuse mechanism for Prolog. The primary goal of OL(P)
is to provide this mechanism in a way that is performance and
semantics preserving. This is achieved by compiling the object-
oriented layer to Prolog without introducing any side-effects. Thus,
Prolog's computational model is retained, and meta-programs can easily
be adapted from Prolog. Full Prolog can be used in OL(P), and
different Prolog variants are allowed as base languages.
OL(P) takes the view of objects as collections of predicates (called
methods). To Prolog, OL(P) 1.1 adds objects with methods, data
encapsulation, instances, and multiple inheritance. Object methods can
access Prolog predicates and vice versa. The OL(P) incremental
compiler translates OL(P) programs to Prolog programs that don't need
runtime interpretation (e.g., no search is needed for inheritance).
OL(P) 1.1 comes with prepared installation for SICStus Prolog and
QUINTUS Prolog (on UNIX), documentation, simple built-in project
management, some libraries, and example programs. The source is
included, so you can port OL(.) to different platforms, different
Prolog systems, and different logic programming languages.
Markus P.J. Fromherz
You can get the OL(P) software by anonymous FTP from
<parcftp@parc.xerox.com> (or <13.1.64.94>), directory /pub/ol.
For example, type in a shell after the prompts:
% ftp parcftp@parc.xerox.com
ftp> cd /pub/ol
ftp> mget *
Then follow the instructions in the file `README'.
6/23/93
Changes 1.0 -> 1.1:
- Provide settings for SICStus Prolog 0.6 and QUINTUS Prolog users.
(Thanks to Jose Alberto, Univ. of Maryland, for helping me out there.)
- Put some operators in parentheses so the Quintus Prolog parser won't
complain.
- Added a check to the portray/1 clause for method goals `O(M,S,I)', which
are now display as `in O: S(I)::M' only if M is a method of O.